package com.chenchao.javacommonclass;

import java.text.DateFormat;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;

/**
 * @encoding : UTF-8
 * @Time : 2020/11/11 21:12
 * @Author : Chen Chao
 * @File : javaSE.com.chenchao.commonclass.DateTest.java
 * @Software : IntelliJ IDEA
 * @since : 1.8
 */
public class DateTest {
    public static void main(String[] args) {
        //test();
        getFormatDate();
        //myDate();

    }
    public static void test(){
        Date date = new Date();
        System.out.println(date);
        Date date1 = new Date(System.currentTimeMillis());
        //可以用时间戳进行构造
        System.out.println(date1);

        //把日期换成时间戳
        System.out.println(date1.getTime());


        //System.out.println(date1.toLocaleString());
        //转换格式,已经弃用
    }
    /**
     * 日期格式化
     */
    public static void getFormatDate()  {
        //创建一个日期格式化对象
        DateFormat dateInstance = DateFormat.getDateInstance();

        //对指定日期进行格式化
        String format = dateInstance.format(new Date());
        System.out.println(format);
        //2020-11-12

        //日期与时间都是长风格的
        DateFormat dateInstance1 = DateFormat.getDateTimeInstance(DateFormat.LONG,DateFormat.LONG);
        String format1 = dateInstance1.format(new Date());
        System.out.println(format1);
        //2020年11月12日 下午01时12分41秒
        //日期与时间都是短的
        DateFormat dateInstance2 = DateFormat.getDateTimeInstance(DateFormat.SHORT,DateFormat.SHORT);
        String format3 = dateInstance2.format(new Date());
        System.out.println(format3);
        //20-11-12 下午1:12

        //时间格式化器
        DateFormat timeInstance = DateFormat.getTimeInstance();
        String format2 = timeInstance.format(new Date());
        System.out.println(format2);
        //13:12:41

        //字符串转成日期
        DateFormat dateTimeInstance = DateFormat.getDateTimeInstance(DateFormat.LONG, DateFormat.LONG);
        Date date = null;
        try {
            date = dateTimeInstance.parse("2020年11月12日 上午10时24分44秒");
        } catch (ParseException e) {
            e.printStackTrace();
        }
        System.out.println(date);
        //Thu Nov 12 10:24:44 CST 2020
    }
    /**
     *自定义日期模式
     */
    public static void myDate(){
        SimpleDateFormat simpleDateFormat = new SimpleDateFormat();
        //定义日期模式
        String parten="yyyy-MM-dd HH:mm:ss";
        //加载模式
        simpleDateFormat.applyPattern(parten);
        String format = simpleDateFormat.format(new Date());
        System.out.println(format);
    }
}
